home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 1 / Cream of the Crop 1.iso / UTILITY / SUTL21.ARJ / SUTL.DOC < prev    next >
Text File  |  1992-04-19  |  47KB  |  1,110 lines

  1.            ┌───────────────────────────────────────────────┐
  2.            │                   SUTL 2.1                    │
  3.            │        A Collection of Small Utilities        │
  4.            │                                               │
  5.            │                    all by                     │
  6.            │                   Bob Eyer                    │
  7.            │                 [73230,2620]                  │
  8.            │                                               │
  9.            │                April 19, 1992                 │
  10.            └───────────────────────────────────────────────┘
  11.  
  12.      NOTE: To  find  the doc  for a particular EXE file, just search on
  13.            the string NAME: - or - search here on the basename  of  the
  14.            program.
  15.  
  16.   ┌──────────────────  SHAREWARE NOTICE and TERMS  ──────────────────────┐
  17.   │                                                                      │
  18.   │  The  content  of  this  archive  is shareware: if you think it's a  │
  19.   │  worthy addition to  your  personal  software,  you  might  make  a  │
  20.   │  contribution  to  the author.  In return for your contribution you  │
  21.   │  will receive the most recent updates of the items mentioned in the  │
  22.   │  list below.                                                         │
  23.   │                                                                      │
  24.   │  Simply purchase a money order from your bank in the amount of  $20  │
  25.   │  US made out to Bob Eyer and send with your return address to:       │
  26.   │                                                                      │
  27.   │    Bob Eyer                                                          │
  28.   │    1100 Bloor Street West                                            │
  29.   │    Suite 16                                                          │
  30.   │    Toronto, Canada M6H 1M8                                           │
  31.   │                                                                      │
  32.   │  Please mention in your accompanying note whether you wish 5.25" or  │
  33.   │  3.5" diskette format,  and  state  the  name  in  which  you  wish  │
  34.   │  registration-only  utilities  to  be  registered.                   │
  35.   │                                                                      │
  36.   │  Do  not  send  checks.  Checks cause problems across international  │
  37.   │  borders which make them unsuitable for  small  purchases  by  mail  │
  38.   │  order.  Checks will be returned with your order unfilled.           │
  39.   │                                                                      │
  40.   │  Enquiries may be placed by writing  directly  to  the  author  via  │
  41.   │  Easyplex at Compuserve [73230,2620].                                │
  42.   │                                                                      │
  43.   │  Warranty and Disclaimer:                                            │
  44.   │  -----------------------                                             │
  45.   │  The  author,  Bob Eyer, of this and all items below guarantees the  │
  46.   │  physical integrity of the diskette covering the points above,  and  │
  47.   │  will  replace  free  of  charge,  if  it  is  received  defective.  │
  48.   │  However, in no case will the author be responsible for any damages  │
  49.   │  due to loss of data or any other reason.  In  no  event  does  the  │
  50.   │  author's  liability  for any damages exceed the price paid for the  │
  51.   │  buyer's order of this software, regardless  of  the  form  of  the  │
  52.   │  claim.   The  person  using  the software bears all risk as to the  │
  53.   │  quality and performance of the software.                            │
  54.   │                                                                      │
  55.   │                                                                      │
  56.   │   DESCRIPTION OF PROGRAMS YOU WILL RECEIVE FOR YOUR CONTRIBUTION     │
  57.   │   --------------------------------------------------------------     │
  58.   │                                                                      │
  59.   │  The items listed below, except the ones with asterisk in the  left  │
  60.   │  margin,   are   registered   to  you  personally.   As  personally  │
  61.   │  registered to you, these particular copies may not be  distributed  │
  62.   │  without the author's consent.  Names of programs falling into this  │
  63.   │  category  are  all  versions of MG, versions of SPC after SPC 5.4,  │
  64.   │  all versions of HOST, CA, and CAF.  These programs may  be  freely  │
  65.   │  circulated  only  in their 'shareware' form - i.e.  in the form in  │
  66.   │  which they are posted by the author  at  Compuserve  or  in  other  │
  67.   │  media.  Versions of these programs which are personally registered  │
  68.   │  to the user must not be so circulated.  When you place an order by  │
  69.   │  making  your  shareware  contribution  under  these terms, you are  │
  70.   │  agreeing to abide by this principle.                                │
  71.   │                                                                      │
  72.   │  The asterisked items mentioned below are in  fact  collections  of  │
  73.   │  Eyer  utilities,  many  of  which  previously  posted  in  earlier  │
  74.   │  versions as separate offerings.   They  have  been  combined  into  │
  75.   │  packages in order to simplify processing orders at this end.        │
  76.   │                                                                      │
  77.   │  Packaged  items  are not registered to the user specifically.  You  │
  78.   │  may distribute FUTL, SUTL, and TUTL only as packages in  the  form  │
  79.   │  supplied  without any alteration, except for possible inclusion of  │
  80.   │  BBS advertising.                                                    │
  81.   │                                                                      │
  82.   │  MG 3.0                                                              │
  83.   │  ------                                                              │
  84.   │  Moving average ASCII graphing program.   Especially  designed  for  │
  85.   │  obtaining  graphic  updates  on stock-market activity in practical  │
  86.   │  trading environments, in which it is essential that the user get a  │
  87.   │  quick  graph  immediately,  with  points  of  the  graph  directly  │
  88.   │  associated  with  the  numerical  and other text information which  │
  89.   │  these points represent (a feat  impractical  in  Lotus  graphics).  │
  90.   │  Designed to be used with SETV in the SUTL package.                  │
  91.   │                                                                      │
  92.   │  SPC 5.5                                                             │
  93.   │  -------                                                             │
  94.   │  Multidrive columnar drive report, with fairly complete description  │
  95.   │  of  your  machine  including  communications,   important   chips,  │
  96.   │  printer,   BIOS,   memory,   processor   and   coprocessor  speed,  │
  97.   │  multitasking, networking, and so on, all in one  single  snapshot.  │
  98.   │  New   version   doubles   the   amount   of  information  on  each  │
  99.   │  communications port and displays the information in columnar  mode  │
  100.   │  above  the drive report, adds an environment usage readout as well  │
  101.   │  as a new P parameter to pause the PRINT multiplexer,  when  it  is  │
  102.   │  used  to  feed  data  to  your  printer.  (DOS PRINT lacks a pause  │
  103.   │  command).                                                           │
  104.   │                                                                      │
  105.   │  HOST 2.3                                                            │
  106.   │  --------                                                            │
  107.   │  Provides   a   simple   BBS   host   for  occasional  use.   Fully  │
  108.   │  configurable, but capable of being run 'right  out  of  the  box',  │
  109.   │  HOST provides ringback, file transfer, mail, chat, userlog, shell,  │
  110.   │  and much more - in an executable only 27K in size.                  │
  111.   │                                                                      │
  112.   │  CA 2.2                                                              │
  113.   │  ------                                                              │
  114.   │  Four-function fixed point TSR calculator with  formatted  displays  │
  115.   │  and  scientific  notation  for  direct  paste  to  text.  Also has  │
  116.   │  accumulator.  Four mode groups.  About 13K of memory.               │
  117.   │                                                                      │
  118.   │  CAF 2.3                                                             │
  119.   │  -------                                                             │
  120.   │  Memory  resident  calculator  with  formatted  displays and direct  │
  121.   │  paste to text.  18 functions,  and  an  accumulation  area.   Five  │
  122.   │  types of modes.  Number formatting.  CAF is the most sophisticated  │
  123.   │  calculator in the business, for its size.  27K of memory.           │
  124.   │                                                                      │
  125.   │* FUTL 2.0                                                            │
  126.   │  --------                                                            │
  127.   │  A collection of file processing  utilities  including  CHG,  ELIM,  │
  128.   │  FVER,  MV, MVA, OTL, RNF, SWP, TYME, and WD.  Covering attributes,  │
  129.   │  deletion, BBS file maintenance, file  moving,  renaming,  applying  │
  130.   │  wildcards,  execution  timing,  etc.   All  are  the best in their  │
  131.   │  class, and a few such as MVA and OTL have no competition at all.    │
  132.   │                                                                      │
  133.   │* SUTL 2.1                                                            │
  134.   │  --------                                                            │
  135.   │  A collection of small utilities covering batch  file,  diagnostic,  │
  136.   │  communications  analysis,  file, video, and other areas, including  │
  137.   │  AL, CFIX, DOSV, DTR, EL, EMS, KALL, LF, PAUZ, PF, PORT, RING, RTS,  │
  138.   │  SETV, SS, and TSTF.  Includes  a  number  of  very  useful  memory  │
  139.   │  resident programs, such as AL and PORT.                             │
  140.   │                                                                      │
  141.   │* TUTL 2.1                                                            │
  142.   │  --------                                                            │
  143.   │  A collection of text-processing utilities,  including  ADD,  CBRO,  │
  144.   │  CITM,  COMB,  DIV,  ESRT, LCNT, REV, and SPLT.  Except for LCNT (a  │
  145.   │  very fast  wildcarded  text  linecounter),  these  programs  cover  │
  146.   │  important  ground  in  text applications for which there exists no  │
  147.   │  other alternative in the shareware market.                          │
  148.   │                                                                      │
  149.   └──────────────────────────────────────────────────────────────────────┘
  150.  
  151.  
  152.  
  153.  
  154.      NAME:                      AL 2.3
  155.                         Resident Periodic Alarm
  156.                           with optional clock
  157.  
  158.  
  159.      Syntax
  160.      ------
  161.  
  162.      AL [/U] [Minutes Start Cxxx Lyy BEEPS NOBEEPS TIME]
  163.  
  164.  
  165.      If no parameter is given on the  AL  command  line,  AL  will  not
  166.      install  in  memory,  but will only display a help screen.  If the
  167.      Start  time  is  not  mentioned, AL will deactivate the alarm, and
  168.      activate the time function.
  169.  
  170.      AL  permits  loading  multiple  copies in memory; such copies will
  171.      operate independently as given by the commandline for each.   This
  172.      makes  it  possible to have many alarm schemes and display colours
  173.      running simultaneously.  Each copy uses about 7K of memory.
  174.  
  175.      The /U switch is designed to de-install AL from memory, only where
  176.      one  copy  is  resident  for each interrupt installed.
  177.  
  178.      Clarification:  AL  installs  by  hooking Interrupt 8 if the BEEPS
  179.      command line option is used; otherwise,  it  installs  by  hooking
  180.      Interrupt 1C.  See discussion below about the BEEPS option.
  181.  
  182.      This  feature allows two copies of AL to be made resident, so that
  183.      each may be successively de-installed by using the /U switch.   It
  184.      also  minimises  the chance of hangs caused by interrupt collision
  185.      with other TSR's which use the timer  tick  (Int  8).   Generally,
  186.      however,  AL  is  not  a  risky  application  for hooking the same
  187.      interrupt which other programs also use.
  188.  
  189.      Parameters (double underlining below)
  190.      -------------------------------------
  191.  
  192.      So  long  as  the parameters are separated by spaces, the order of
  193.      entry on the command line is immaterial.
  194.  
  195.      Minutes
  196.      =======
  197.      The  number  of minutes to wait before next beeping the computer's
  198.      speaker and displaying the time.  Number entered for Minutes  must
  199.      be a positive integer and less than 9001.  Where the number is not
  200.      in  the range 1 =< Minutes =< 9000, AL automatically sets equal to
  201.      whichever limit is closest.  If Minutes not specified, AL  assumes
  202.      one minute.  Example,
  203.  
  204.      AL 15 08:00
  205.  
  206.      sets  the  delay  between  successive  alarm  beep/display  to  15
  207.      minutes starting at 08:00, but
  208.  
  209.      AL 0 08:00
  210.  
  211.      sets the delay to 1 minute.
  212.  
  213.      Start
  214.      =====
  215.      This   variable  replaces  the  "Fminutes"  variable  in  previous
  216.      versions.  AL 2.3 uses  a  start  time,  specifiable  with  either
  217.      minutes,  or  seconds,  precision.   The use of Start time, rather
  218.      than First minutes, eliminates the  need  to  calculate  how  many
  219.      minutes  to  wait before the first alarm.  It also permits the use
  220.      of time-locking, so that each alarm occurs exactly Minutes apart.
  221.  
  222.      For example, if Start is specified as follows,
  223.  
  224.      AL 10:00
  225.  
  226.      AL will sound a single  beep  once  a  minute,  precisely  on  the
  227.      minute,  that is, at zero seconds.  Whereas, if Start is specified
  228.      as,
  229.  
  230.      AL 15 10:00:07
  231.  
  232.      then it will sound a beep  once  every  15  minutes  beginning  at
  233.      10:00:07, and on the 7th second of every 15th minute thereafter.
  234.  
  235.      When  entering  the  Start  parameter,  it is essential to use the
  236.      colon (':').  AL recognises a parameter as being a Start  time  by
  237.      finding just that character in a string.
  238.  
  239.      If no Start is found on the command line, AL suppresses the  alarm
  240.      function and activates the time function.
  241.  
  242.      Cxxx
  243.      ====
  244.      C is a token and must be used with a number providing  the  colour
  245.      scheme  of  the  time  display.   If none is specified, AL assumes
  246.      white on black.  See discussion below about time  display  colour.
  247.      Example,
  248.  
  249.      AL C75
  250.  
  251.      sets  time  display  colour  to  bright  cyan  on  red,  and  only
  252.      displays the time with no alarm.
  253.  
  254.      Lyy
  255.      ===
  256.      L is a token and must be used with a number specifying the  screen
  257.      line on which the alarm time display is to appear.  AL always puts
  258.      this display in the far right margin, to minimise overlaying other
  259.      text  on  the  screen.  The L option, however, enables the user to
  260.      select Line 1, or any other line on which he would like to see the
  261.      alarm time.  If the L option is not specified, AL assumes that the
  262.      alarm time display will be on the same line as corresponds to  the
  263.      current cursor position.  Example,
  264.  
  265.      AL L12 08:00
  266.  
  267.      sets  the  position of the alarm display to line 12 of the screen,
  268.      using 08:00 for the start time and defaults for other parameters.
  269.  
  270.      BEEPS
  271.      =====
  272.      If 'BEEPS' appears on the command  line,  AL  will  provide  three
  273.      beeps  rather  than just one (the default), for environments which
  274.      may be too noisy for the user to notice just one beep.   Owing  to
  275.      the  use  of  time  locking,  this  feature no longer degrades the
  276.      accuracy of delays between successive alarms.
  277.  
  278.      When  the  BEEPS  option  is  activated,  AL hooks Int 8 directly,
  279.      otherwise it hooks Int 1C.
  280.  
  281.      NOBEEPS
  282.      =======
  283.      If 'NOBEEPS' appears on the command line, AL will  not  provide  a
  284.      beep when the alarm time is displayed.
  285.  
  286.      TIME
  287.      ====
  288.      If  'TIME'  appears  on  the command line, AL will keep a separate
  289.      clock display in the  upper  right  hand  corner  of  the  screen,
  290.      independently  of the periodic alarm function defined by the other
  291.      parameters.
  292.  
  293.      The clock display is updated only once per second, not once  every
  294.      clock tick.
  295.  
  296.      Example,
  297.  
  298.      AL TIME BEEPS L2 C26 15 17:30
  299.  
  300.      activates  a  separate time display at the upper right hand corner
  301.      of the screen, uses a colour-scheme of bright green on blue, beeps
  302.      three times on alarm display, puts alarm display at  Line  2  with
  303.      alarm delay of 15 minutes, starting at 5:30 P.M.
  304.  
  305.  
  306.      CAUTION
  307.      -------
  308.      Like   all   memory   resident  programs,  AL  is  vulnerable  to
  309.      compatibility problems which may arise from  its  use  with  other
  310.      TSR's.   If  you  find  you must reboot, try removing other memory
  311.      resident programs from your AUTOEXEC.BAT file, or try changing the
  312.      sequence in  which  they  are  loaded  until  you  find  the  best
  313.      combination.
  314.  
  315.      AL  has  been tested widely, but has shown no problem, except with
  316.      Lotus 123 (which takes almost complete  control  over  video)  and
  317.      multitasking  applications  which  grab  timer  ticks to multiplex
  318.      active tasks.  Desqview will hang if AL is loaded prior to DV.  If
  319.      AL is used with DV, it should be loaded  in  a  non-communications
  320.      task  AFTER  DV  is  loaded.  AL's video will bleed through to all
  321.      tasks.
  322.  
  323.      Display Colour
  324.      --------------
  325.      The command line C-number determines the colour  scheme  for  time
  326.      displays.  The default is 7, which describes white foreground on a
  327.      black  background.   0  is  impossible (black on black), and so CA
  328.      converts  that  number  to  7   automatically.    Foreground   and
  329.      Background numbers may be read from the following table:
  330.  
  331.                   Back     Fore   Bright Fore
  332.                   ----     ----   -----------
  333.      Black           0        0    8
  334.      Blue           16        1    9
  335.      Green          32        2   10
  336.      Cyan           48        3   11
  337.      Red            64        4   12
  338.      Magenta        80        5   13
  339.      Brown          96        6   14
  340.      White         112        7   15
  341.  
  342.      The correct C-number is found  merely  by  adding  the  Foreground
  343.      number  to  the  Background  number  desired.  For example, Bright
  344.      Green on Blue background is 10 + 16 = 26.
  345.  
  346.      Avoid  setting  the C-number above 127.  Colour numbers above that
  347.      limit will produce blinking displays.
  348.  
  349.      In my estimation the C-numbers best for the eye are  10,  11,  14,
  350.      15, 26, 27, 30, 31, 74, 75, 78, 79 and 112.
  351.  
  352.  
  353.      -----------------------------------------------------------------
  354.      NAME:                     CFIX 2.0
  355.                              Cursor Fixer
  356.  
  357.  
  358.      Syntax
  359.      ------
  360.  
  361.      CFIX [B | T | OFF]
  362.  
  363.  
  364.      Run  with  no  option, CFIX changes the cursor back to normal from
  365.      either a cursorless screen, or from the effect  of  some  programs
  366.      which leave the cursor in a non-standard configuration.
  367.  
  368.      If  CFIX  is  run  with the B option, it will change the cursor to
  369.      block mode, useful for laptop displays.
  370.  
  371.      Where run with the T option, CFIX determines a thick cursor.
  372.  
  373.      If the OFF option is activated, CFIX simply turns off the cursor.
  374.  
  375.  
  376.      -----------------------------------------------------------------
  377.      NAME:                       DOSV
  378.  
  379.      Syntax
  380.      ------
  381.  
  382.      DOSV
  383.  
  384.  
  385.      DOSV  simply  returns the major element of the current DOS version
  386.      as an error level.
  387.  
  388.      Useful in reminding the user to boot under a different version  of
  389.      DOS  for  a  particular  program,  where  the  program  cannot  be
  390.      prevented from hanging under, say, DOS 5, by using a program  like
  391.      SETVER.EXE  to  "trick"  the  program  into seeing a different DOS
  392.      version as its operating environment.
  393.  
  394.      A number of programs written prior to the release of  DOS  4  fall
  395.      into  this category.  And the evidence of these programs indicates
  396.      that DOS versions are not fully downward compatible.
  397.  
  398.      Sample batch file to permit DOS 3 operation, but not  later  major
  399.      versions:
  400.  
  401.      echo off
  402.      dosv
  403.      if errorlevel 4 goto pgmerror
  404.      pgm.exe
  405.      goto exit
  406.      :pgmerror
  407.      echo This program requires DOS 3
  408.  
  409.      :exit
  410.  
  411.  
  412.  
  413.      -----------------------------------------------------------------
  414.      NAME:                      DTR
  415.                    A program to toggle the DTR line
  416.  
  417.  
  418.      Syntax
  419.      ------
  420.  
  421.      DTR [port]
  422.  
  423.      where port may be either 1, 2, 3, or 4.  If port is not entered on
  424.      the commandline, DTR defaults the port to 1.
  425.  
  426.      This  is  the  companion  program for RTS, and functions in a very
  427.      similar way: Each execution toggles the DTR line without affecting
  428.      the RTS line.
  429.  
  430.      This program is  useful  primarily  when  using  a  communications
  431.      program  which  does  not drop DTR properly at logoff.  Most users
  432.      will never find it necessary to use such programs as RTS  or  DTR;
  433.      but  then,  there are occasions when such simple programs prove to
  434.      be quite handy.
  435.  
  436.      To observe the action of DTR, watch the action of your TR light on
  437.      your modem or the DTR flag on the PORT display (see  below),  when
  438.      executing DTR.EXE.
  439.  
  440.  
  441.      -----------------------------------------------------------------
  442.      NAME:                      EL
  443.                       Returns command line number
  444.                           as DOS error level
  445.  
  446.  
  447.      Syntax
  448.      ------
  449.  
  450.      EL [number]
  451.  
  452.      Discussion
  453.      ----------
  454.      The  sole  function of this program is to convert a number into an
  455.      error level.
  456.  
  457.      The purpose of providing such a function is to  make  it  possible
  458.      for the user to control processing in a batch file by specifying a
  459.      parameter on the batch file's command line.
  460.  
  461.      In  the  event  that  no  number  is  entered, EL returns 0 as the
  462.      error level.
  463.  
  464.  
  465.      Example
  466.      -------
  467.      Suppose we want to use one batch file for performing two functions
  468.      in  sequence, but wish to perform both functions only when say, 1,
  469.      is entered on  the  command  line.   This  file  might  be  called
  470.      OPERATE.BAT, and its contents might look like this:
  471.  
  472.      ECHO OFF
  473.      EL %1
  474.      IF NOT ERRORLEVEL 1 THEN GOTO CONTINUE
  475.      FIRST.EXE
  476.      :CONTINUE
  477.      SECOND.EXE
  478.  
  479.      If OPERATE is entered  without  a  '1'  parameter,  it  will  skip
  480.      running  FIRST.EXE (because EL responds with an error level of 0);
  481.      whereas, if
  482.  
  483.      OPERATE 1
  484.  
  485.      is entered, then  OPERATE  will  first  run  FIRST.EXE,  and  then
  486.      SECOND.EXE.
  487.  
  488.      -----------------------------------------------------------------
  489.      NAME:                      EMS
  490.               Batch file utility for detecting EMS memory
  491.  
  492.  
  493.      Syntax
  494.      ------
  495.  
  496.      EMS
  497.  
  498.      Returns:
  499.  
  500.      - DOS error level 1 if no EMS is present, displaying a message
  501.        to that effect on the screen.
  502.  
  503.      - DOS error level 0 if EMS is detected.
  504.  
  505.  
  506.      Discussion
  507.      ----------
  508.      I wrote this little utility to avoid wasting time trying  to  make
  509.      useless  memory  adjustments  to Desqview tasks, resulting from my
  510.      forgetting that I set up DV to run only under EMS.  What typically
  511.      happens in the DV environment, is that you log in, select a  task,
  512.      and  then  DV returns a message indicating inadequate memory.  So,
  513.      you spend maybe 30 minutes fiddling with memory  reallocation  and
  514.      then,  suddenly,  it  hits  you: You should activate conversion of
  515.      extended to expanded memory in your CONFIG.SYS  file!   30  wasted
  516.      minutes!
  517.  
  518.      This problem is not important for regular users of Desqview, since
  519.      the  regular user will probably always keep his machine configured
  520.      to make EMS available.  But it is liable to  victimise  occasional
  521.      users  of  Desqview,  who  prefer  to  deactivate EMS entirely for
  522.      normal computer  operations  (because  of  the  sacrifice  in  CPU
  523.      speed which EMS conversions involve).
  524.  
  525.      EMS.EXE solves this  problem.   As  illustration,  I  suggest  the
  526.      following batch file, called DV.BAT, to run XDV:
  527.  
  528.      @echo off
  529.      ems
  530.      if errorlevel 1 goto exit
  531.      c:
  532.      cd\dv
  533.      xdv
  534.      :exit
  535.  
  536.      Since EMS returns an error level of 1 if EMS is not detected, this
  537.      batch  file  simply  returns  the  user  back to DOS.  En passant,
  538.      EMS.EXE will print the message
  539.  
  540.      --> Error: No EMS memory detected
  541.  
  542.      to the screen.  On the other hand,  if  EMS.EXE  does  detect  EMS
  543.      memory, the batch file simply proceeds to load Desqview.
  544.  
  545.      There are obviously other uses for EMS.EXE, as well.
  546.  
  547.  
  548.      -----------------------------------------------------------------
  549.      NAME:                     KALL 2.0
  550.                      A batch file CALLing program
  551.  
  552.  
  553.      Syntax
  554.      ------
  555.  
  556.      KALL batchfilename [parameters]
  557.  
  558.      Function
  559.      --------
  560.      To  prevent nested batch file calls from stopping execution of the
  561.      main batch file.  This  is  the  purpose  of  the  CALL  statement
  562.      supplied  with DOS 3.3 and DOS 4.0, but users of DOS 3.0, 3.1, and
  563.      3.2 do not have such a capability.  KALL fills the void.
  564.  
  565.      Parameters  may  be lower case, if required.  KALL does not change
  566.      the case of the string which appears on its command line.
  567.  
  568.      ------------------------------------------------------------------
  569.      NAME:                        LF
  570.                            Linefeeds printer
  571.  
  572.      Syntax
  573.      ------
  574.  
  575.      LF [lines]
  576.  
  577.      where lines specifies the number of linefeeds by which the printer
  578.      is to be advanced.
  579.  
  580.      Where the parameter is omitted, LF assumes 1 linefeed.
  581.  
  582.      -----------------------------------------------------------------
  583.      NAME:                     PAUZ 2.3
  584.                Specifiable wait function for batch files
  585.  
  586.  
  587.      Syntax
  588.      ------
  589.      PAUZ ResumeChar [WaitSeconds|TargetTime]
  590.  
  591.      Definitions
  592.      -----------
  593.      ResumeChar:     The upper or lower case character  the  user  must
  594.                      press  to continue processing before PAUZ finishes
  595.                      waiting.  PAUZ's interpretation of  ResumeChar  is
  596.                      not case sensitive.
  597.  
  598.                      If  SPACE is entered for ResumeChar, PAUZ will use
  599.                      the Spacebar as  the  key  to  hit  for  continued
  600.                      processing.  If ANY is used then PAUZ uses any key
  601.                      for this purpose.
  602.  
  603.      Second parameter (optional):
  604.      Either -
  605.      WaitSeconds:    The  maximum  number  of  seconds  PAUZ will delay
  606.                      processing.
  607.      or -
  608.      TargetTime:     The time  in  HH:MM  format  at  which  PAUZ  will
  609.                      continue   processing.   This  parameter  must  be
  610.                      entered with a colon,  in  formats  like  8:40  or
  611.                      08:40.   Postmeridian  times  must  be  entered in
  612.                      24-hour format.
  613.  
  614.                      New:
  615.                      PAUZ  2.2 now tests whether the current time is at
  616.                      OR AFTER the TargetTime, to accommodate the  needs
  617.                      of  Sysops who use complex batch files to automate
  618.                      processing, and don't wish  to  have  their  batch
  619.                      programs  halt  for  nearly 24 hours, in case some
  620.                      process does not quite make it to the given target
  621.                      time.  [Suggestion by Steven Guralnick.]
  622.  
  623.      Where  the second parameter is not mentioned, PAUZ will operate in
  624.      wait rather than target mode, using defaults as discussed below in
  625.      the section entitled "WaitSeconds Defaults".
  626.  
  627.      Discussion
  628.      ----------
  629.      PAUZ  i/o  is redirectable.  So, PAUZ can be used to assist design
  630.      of batch file-based remote door programs.
  631.  
  632.      PAUZ detects number keys during a PAUZ wait, to resume  processing
  633.      by returning an error level identical to the number pressed by the
  634.      user at his keyboard.
  635.  
  636.      Examples
  637.      --------
  638.      The  following  shows  how  to  use PAUZ with the program's return
  639.      message:
  640.  
  641.      (1)
  642.      PAUZ ANY
  643.      Press any key or wait 30 seconds to continue ...
  644.  
  645.      Pressing  any  key  will return control to DOS (or the batch file)
  646.      with  error  level  1;   otherwise,   control   will   be   passed
  647.      automatically  with  error  level  0 if no key is pressed after 30
  648.      seconds have elapsed.
  649.  
  650.      (2)
  651.      PAUZ SPACE
  652.      Press [SPACEBAR] or wait 30 seconds to continue ...
  653.  
  654.      (3)
  655.      PAUZ A
  656.      Press [A] or wait 15 seconds to continue ...
  657.  
  658.      (4)
  659.      PAUZ A 75
  660.      Press [A] or wait 75 seconds to continue ...
  661.  
  662.      Note  the  effect  of  overriding  the 15 second default for the A
  663.      ResumeChar (see below).
  664.  
  665.      (5)
  666.      PAUZ A 14:20
  667.      Press [A] or wait until 14:20 to continue ...
  668.  
  669.      Notice that the use of a target time  causes  PAUZ  to  alter  the
  670.      format of its wait message.
  671.  
  672.      Note:
  673.      In  any of these examples, PAUZ will resume with error level x, if
  674.      a key in the range  1  to  9  is  pressed.   The  error  level  is
  675.      identical to the number of the key selected.
  676.  
  677.      This is useful in using PAUZ to provide  for  branching  logic  in
  678.      batch file programs.
  679.  
  680.      WaitSeconds Defaults
  681.      --------------------
  682.      In  the event the user does not mention WaitSeconds on the command
  683.      line, PAUZ uses  the  identity  of  ResumeChar  to  determine  the
  684.      magnitude of the maximum wait time.  The following table indicates
  685.      the defaults supported:
  686.  
  687.             ResumeChar         Default Wait Time
  688.  
  689.                  A               15 seconds
  690.  
  691.                  B               60
  692.  
  693.                  C              120
  694.  
  695.                  D              240
  696.  
  697.      Anything  used  for ResumeChar other than A, B, C, or D will cause
  698.      PAUZ to use 30 seconds as the default wait time.
  699.  
  700.      Of course, in the event the user does mention WaitSeconds  on  the
  701.      command  line,  the  user's  wait  time will always override these
  702.      defaults.
  703.  
  704.      Error Levels
  705.      ------------
  706.      PAUZ's normal termination is  defined  as  an  uninterrupted  PAUZ
  707.      run  -  i.e.   without touching any ResumeChar key.  In this case,
  708.      PAUZ returns an error level of 0.
  709.  
  710.      If the user interrupts PAUZ processing  by  hitting  the  required
  711.      ResumeChar,  then  PAUZ  returns an error level of 1.  If a number
  712.      key is pressed, PAUZ returns control to the calling program,  with
  713.      an error level identical to the number of the key pressed.
  714.  
  715.      ------------------------------------------------------------------
  716.      NAME:                        PF
  717.                            Pagefeeds printer
  718.  
  719.      Syntax
  720.      ------
  721.  
  722.      PF [pages]
  723.  
  724.      where pages specifies the number of pagefeeds by which the printer
  725.      is to be advanced.
  726.  
  727.      Where the parameter is omitted, PF assumes 1 pagefeed.
  728.  
  729.  
  730.      -----------------------------------------------------------------
  731.      NAME:                     PORT 2.0
  732.                        Reads out data from three
  733.                        communications registers
  734.                          for any port (1 to 4)
  735.  
  736.      Syntax
  737.      ------
  738.  
  739.      PORT [/U] [portnum] [D]        /u = uninstall.
  740.  
  741.      Portnum may be a number from 1 to 4, and selects the number of the
  742.      communications port.  The default is 1.
  743.  
  744.      D means use display mode without loading as a TSR (display mode is
  745.      much more responsive than TSR mode).
  746.  
  747.      The main purpose of this program is to provide  a  debugging  tool
  748.      for  developing  communications  programs.   I  have  included all
  749.      "lines"   of   each   register   for   completeness   purposes   -
  750.      notwithstanding  that  some  "lines"  are  reserved  and  probably
  751.      undefined (such as bits 5 to 7 of  the  modem  control  register).
  752.      The following is a list of the data supported by PORT 2.0:
  753.  
  754.  
  755.      MODEM CONTROL REGISTER (Line 1 of display)        TYPE
  756.      ----------------------                            ----
  757.      - Data Terminal Ready  (DTR)                      Long
  758.      - Ready to Send        (RTS)                      Long
  759.      - OUT1                 (OU1)                      Long
  760.      - OUT2                 (OU2)                      Long
  761.      - LOOP                 (LOP)                      Long
  762.      - reserved             (5)                        Unknown
  763.      - reserved             (6)                        Unknown
  764.      - reserved             (7)                        Unknown
  765.  
  766.      LINE STATUS REGISTER (Line 2 of display)
  767.      --------------------
  768.      - Receive data ready   (RDR)                      Variable
  769.      - Overrun error        (OVR)                      Transient
  770.      - Parity error         (PAR)                      Variable
  771.      - Framing error        (FRM)                      Transient
  772.      - Break detected       (BRK)                      Transient
  773.      - Transmit hold empty  (THE)                      Variable
  774.      - Transmit shift empty (TSE)                      Variable
  775.      - Timeout              (TIM)                      Transient
  776.  
  777.      MODEM STATUS REGISTER (Line 3 of the display)
  778.      ---------------------
  779.      - Delta clear to send  (DCS)                      Transient
  780.      - Delta dataset ready  (DDR)                      Transient
  781.      - Trailedge of ring    (TRL)                      Transient
  782.      - Delta carrier detect (DCD)                      Transient
  783.      - Data Set Ready       (DSR)                      Long
  784.      - Clear to Send        (CTS)                      Long
  785.      - Ringing              (RNG)                      Long
  786.      - Carrier detect       (CD)                       Long
  787.  
  788.      In  TSR  mode,  PORT  updates  the display once every half second,
  789.      which  is  about  the  best  compromise  between  viewability   of
  790.      the transient indicators and speed of update on the long ones.
  791.  
  792.      Where  the  wrong port is selected, PORT will kick out the message
  793.      "Error: no such port" and return to DOS without loading into RAM.
  794.  
  795.      By  studying  the  display  at  various  points   in   running   a
  796.      communications  program,  the  expert may use PORT to debug such a
  797.      program.
  798.  
  799.      Do   not   use  PORT  for  routine  monitoring  during  a  regular
  800.      communications session, unless  you  don't  mind  losing  bits  of
  801.      captured  data.   PORT  interrupts  communications processing once
  802.      every half second independently of the stream of characters  being
  803.      read  from  the  receive buffer.  Loss of information is therefore
  804.      inevitable, as updating the display  requires  a  very  small  but
  805.      finite amount of time.
  806.  
  807.      PORT is intended to be  used  only  for  debugging  purposes,  not
  808.      routine monitoring.
  809.  
  810.      ------------------------------------------------------------------
  811.      NAME:                     RING 2.0
  812.                       TSR ring detector for video
  813.  
  814.  
  815.      Syntax
  816.      ------
  817.  
  818.      RING [/U] [port]
  819.  
  820.  
  821.      Port  is a number in the range 1-4, representing the number of the
  822.      communications  port  to  which  the  modem  and  phone  line  are
  823.      connected.
  824.  
  825.      RING assumes port is 1, unless otherwise specified.
  826.  
  827.      U means unload RING from memory.
  828.  
  829.  
  830.      Function
  831.      --------
  832.      Places 'RING' in the upper left hand corner of the  screen,  every
  833.      time the phone rings.
  834.  
  835.      The  RING  field  on  the screen is created on the first ring, and
  836.      will die 10 seconds after the leading edge of the last  ring.   [A
  837.      ring cycle lasts about 6 seconds].
  838.  
  839.      Thus, once RING is loaded,  the  user  doesn't  know  it's  there,
  840.      unless the phone is ringing.
  841.  
  842.  
  843.      Purpose
  844.      -------
  845.      The  primary  object of RING 2.0 is to provide a ring detector for
  846.      computer users who work in noisy environments  where  phone  rings
  847.      cannot  be  heard,  or  in environments or situations in which the
  848.      user does not wish to hear the  ring  of  a  telephone  under  any
  849.      circumstances, and so turns off his telephone ringer.
  850.  
  851.  
  852.      -----------------------------------------------------------------
  853.      NAME:                      RTS
  854.                A program to toggle the RTS line in doors
  855.  
  856.  
  857.      Syntax
  858.      ------
  859.  
  860.      RTS [port]
  861.  
  862.      where port may be 1, 2, 3, or 4.  If port is not  entered  on  the
  863.      commandline, RTS defaults port to 1.
  864.  
  865.      This  program  toggles  the  logic status of the RTS line, without
  866.      altering the DTR  line,  and  deals  directly  with  standard  IBM
  867.      hardware  modem  control  registers for ports 1 or 2.  It does not
  868.      open or close the communications port.  RTS may  be  executed  any
  869.      number  of times without sending invalid data to the modem control
  870.      register, and will not stay resident in memory.  Consequently, use
  871.      of this program is both 'safe' and  will  not  reduce  free  space
  872.      available for a specific door program.
  873.  
  874.      If  RTS is low, this program will set it high; if high it will set
  875.      the level to low.  RTS will not provide any video output, as it is
  876.      designed to be invoked  from  a  batch  file  which  controls  the
  877.      processing of a specific door program - so that the remote user is
  878.      not  aware  of  its operation.  Therefore, the Sysop must use some
  879.      other indicator program to determine the actual status of the  RTS
  880.      line, such as the PORT program (see above).
  881.  
  882.      General Discussion:
  883.      ------------------
  884.      Have  you  found a door program which, when accessed through shell
  885.      or exit doors of RBBS, simply hangs remote video?  This may be the
  886.      program which solves your problem.
  887.  
  888.      Most  door  programs  don't  have  RTS/CTS  problems when executed
  889.      through the shell or exit routines of RBBS.  This is  due  to  the
  890.      fact that most door programs, particularly those which are written
  891.      in  BASIC, will reopen the communications port in such a way as to
  892.      raise the RTS line.
  893.  
  894.      However,  some  host programs may, under certain conditions, lower
  895.      the RTS line when dropping to DOS for  a  door  application,  even
  896.      where DTR is unaffected.
  897.  
  898.      Setting the RTS line at logic low means that programs which reopen
  899.      the  communications  port without correcting this problem will not
  900.      send any information.  Typically, such programs will be written in
  901.      a language which doesn't make any assumptions about how  the  port
  902.      should  be  opened.
  903.  
  904.      RTS  should  solve  this  problem.   However,  don't use it unless
  905.      you're sure you have an RTS logic problem: If  your  host  program
  906.      keeps RTS high after drop to DOS, using RTS will force it low.
  907.  
  908.  
  909.      -----------------------------------------------------------------
  910.      NAME:                     SETV 2.2
  911.                     Sets video to 7 text resolutions
  912.  
  913.      Syntax
  914.      ------
  915.  
  916.      SETV Mode
  917.  
  918.      The  possible  modes  may  be  listed  by  entering  SETV  with no
  919.      parameter.
  920.  
  921.      Discussion
  922.      ----------
  923.      There should be virtually no risk of damaging your video equipment
  924.      on use of SETV: This program will not permit display  of  anything
  925.      but  the  help  screen,  if  the  adaptor detected is MDA, CGA, or
  926.      Hercules.   However,  it  is  specifically  designed  for  VGA  or
  927.      Multisync monitors.
  928.  
  929.      If you run a display program, such as an editor,  which  scrambles
  930.      your video after running SETV, just reboot.
  931.  
  932.      Video scrambling is most likely to occur in  some  programs,  when
  933.      the  screen  width is set to 132 rather than 80, and is due to the
  934.      failure of the display program to take into account  large  screen
  935.      widths.   A  few  programs,  such  Vern  Buerg's  LIST,  will take
  936.      132-column modes into account.
  937.  
  938.      SETV supports both 132x25 and 132x44 132-line modes.
  939.  
  940.      WARNING
  941.      -------
  942.      All of SETV's modes except 40x25 and (N)ormal mode require a  more
  943.      sophisticated  ANSI  driver  than  DOS's  ANSI.SYS.  The latter is
  944.      limited  chiefly  by failing to account for screens longer than 25
  945.      lines.  Recommendation: Use  NANSI.SYS  (found  on  many  bulletin
  946.      boards) instead.  The syntax to use in your CONFIG.SYS will be the
  947.      same.   And  NANSI.SYS  provides  faster screens and more flexible
  948.      operation.
  949.  
  950.  
  951.      -----------------------------------------------------------------
  952.      NAME:                      SS 2.0
  953.  
  954.          Protects computer from online keyboard reassignments,
  955.               preserves colour and clears screen on exit.
  956.                       [requires use of NANSI.SYS]
  957.  
  958.  
  959.      Syntax
  960.      ------
  961.  
  962.      SS Program [parameters]
  963.  
  964.      Discussion
  965.      ----------
  966.      The main purpose of this program is to increase user  security  on
  967.      returning from an online communications session, while maintaining
  968.      the original screen colour selected before going online.
  969.  
  970.      One of the principal dangers of communications environments arises
  971.      from  reading  online  mail  which  may  or  may  not contain ANSI
  972.      coding.
  973.  
  974.      It is normally desirable to permit one's communications program to
  975.      receive and interpret ANSI codes, so that online ANSI graphics can
  976.      be  viewed.  However, the side-effect of this advantage is that it
  977.      allows the nasty sender of a message to  reassign  the  receiver's
  978.      keyboard  through  ANSI commands, so that some keys have a new and
  979.      potentially destructive meaning, not understood by the receiver.
  980.  
  981.      Some  communications  programs  solve  this  problem by internally
  982.      resetting all ANSI defaults after DTR is dropped; but the practice
  983.      may not be universal, especially in view of the  fact  that  there
  984.      are  several alternatives to ANSI.SYS in the market, and NANSI.SYS
  985.      is only one of them.
  986.  
  987.      This  problem can be addressed by the user of NANSI.SYS by running
  988.      a batch file which contains the line,
  989.  
  990.      echo 
  991.  
  992.      immediately after the communications session is ended.
  993.  
  994.  
  995.      This has the effect of zeroing out all ANSI settings.  [Works only
  996.      with  NANSI.SYS,  or  NNANSI.SYS].   Such  a  command, however, is
  997.      clumsy, and also has the effect of removing the  DOS  ANSI  colour
  998.      scheme  selected before the user began his communications session,
  999.      thus making it necessary to re-establish that colour scheme  every
  1000.      time a communications session is concluded.
  1001.  
  1002.      If you're like me, communications sessions occur several  times  a
  1003.      day,  and  having  to  re-establish the colour scheme each time is
  1004.      enough of a pain to cause me to use white on black, instead of  my
  1005.      preferred black on cyan, or white on blue.
  1006.  
  1007.      SS,  short  for 'Secure Shell', solves this problem by storing the
  1008.      user's  ANSI  colour  settings  before   shelling   out   to   the
  1009.      communications  program,  and  then  resetting  NANSI  defaults on
  1010.      return, restoring the screen using the saved  colour  information.
  1011.      In  the  last  step,  SS clears the screen, thus making the colour
  1012.      assignments apply once again to the entire screen.
  1013.  
  1014.      Example
  1015.      -------
  1016.      Suppose the  command  normally  used  to  start  a  communications
  1017.      session is
  1018.  
  1019.      BOYAN
  1020.  
  1021.      The  session  may  be  made neat and secure by using the following
  1022.      command, instead:
  1023.  
  1024.      SS BOYAN
  1025.  
  1026.  
  1027.      This example assumes that the following line appears in the user's
  1028.      CONFIG.SYS:
  1029.  
  1030.      DEVICE=[path]NANSI.SYS
  1031.  
  1032.      where [path] is the directory in which NANSI.SYS is found.
  1033.  
  1034.  
  1035.      Additional advantage
  1036.      --------------------
  1037.      Because a shell always puts a second copy of the resident  portion
  1038.      of  COMMAND.COM  into  memory,  it  has  the  effect of correcting
  1039.      certain instabilities to which  NANSI-type  drivers  are  subject,
  1040.      when transferring from a program that uses direct screen writes in
  1041.      normal resolution back to DOS, when the initial resolution is 43 x
  1042.      80 or 50 x 80.
  1043.  
  1044.  
  1045.      Warning
  1046.      -------
  1047.      SS cancellation of  keyboard  reassignments  will  not  work  with
  1048.      ANSI.SYS.   Colour  restoration, however, will work.  NANSI.SYS is
  1049.      therefore a safer alternative to ANSI.SYS.  If you cannot find  it
  1050.      on  your  BBS,  ask  your  Sysop.  Incidentally, NANSI.SYS is also
  1051.      faster than ANSI.SYS.  There is no longer any advantage  in  using
  1052.      DOS's normal video driver.
  1053.  
  1054.      Credits
  1055.      -------
  1056.      NANSI.SYS  3.0  is  shareware  written  by  Daniel  Kegel,  of 221
  1057.      Fairview Ave, South Pasadena, CA 91030 USA.
  1058.  
  1059.      There is  also  another  more  efficient  type  of  NANSI  driver,
  1060.      developed  on  the basis of NANSI 2.2 by Tom Almy, 17830 SW Shasta
  1061.      Trail, Tualatin, OR 97062, under copyright agreement  with  Kegel.
  1062.      This one is called NNANSI.SYS, for generic EGA/VGA (8086).
  1063.  
  1064.      SS is compatible with both of these drivers.
  1065.  
  1066.  
  1067.      -----------------------------------------------------------------
  1068.      NAME:                     TSTF 2.2
  1069.                           Floppy drive tester
  1070.                        for automated batch file
  1071.                                programs
  1072.  
  1073.  
  1074.      Syntax
  1075.      ------
  1076.  
  1077.      TSTF driveletter or drive
  1078.  
  1079.      Discussion:
  1080.      ----------
  1081.      For  those who use batch files to automate formatting floppy disks
  1082.      or do other automated work with floppy drives, there is a need for
  1083.      a  very  small  and  simple  program  which  returns  errorlevels,
  1084.      depending on the drive response.  TSTF is  one  solution  to  this
  1085.      problem.
  1086.  
  1087.      TSTF  accepts  either a or A: or a: as its argument, and any drive
  1088.      may be tested.
  1089.  
  1090.      The returns are as follows:
  1091.  
  1092.      Errorlevel       Meaning
  1093.  
  1094.      0                No error (drive ok)
  1095.  
  1096.      1                Drive error
  1097.                       [Unformatted disk or
  1098.                        Drive door open]
  1099.  
  1100.      2                Improper command line syntax (displays help)
  1101.  
  1102.      Execution  time  depends  on  the  particular  drive  and the disk
  1103.      parameter  table  for  each.   Generally, 5.25" floppy drives will
  1104.      require several seconds to test, and other types of floppy  drives
  1105.      less than 1 second.
  1106.  
  1107.  
  1108.      -------------------------------------------------------------
  1109.      End of documentation.
  1110.